#pragma once

#include "RegistryValue.h"

class ViewOptions
{
public:

    ViewOptions(const std::wstring& root, HKEY hKey) 
        : fontDefault(root + L"FontDefault", hKey)
        , fontName(root + L"FontName", hKey)
        , fontSize(root + L"FontSize", hKey)
        , fontBold(root + L"FontBold", hKey)
        , viewZoom(root + L"ViewZoom", hKey)
        , viewWordWrap(root + L"ViewZoom", hKey)
    {
        if (!fontDefault.exists())
            fontDefault = true;

        if (!viewZoom.exists())
            viewZoom = 100;

        if (!viewWordWrap.exists())
            viewWordWrap = true;
    }

protected:

    registry_string<bool>         fontDefault;

    registry_string<std::wstring> fontName;
    registry_string<int>          fontSize;
    registry_string<bool>         fontBold;

    registry_string<int>          viewZoom;
    registry_string<bool>         viewWordWrap;

};
